﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Entities
{
    // Раскладка: хранит количество атомов по предмету
    public class Allocation : BaseEntity<int>
    {
        public Allocation()
        {
            StudyPlanItems = new List<StudyPlanItem>();           
            LoadAtoms = new List<LoadAtom>();
        }

        public virtual float FactorForControl { get; set; }
        public virtual float FactorForConsultation { get; set; }
        public virtual float FactorForBeforeExam { get; set; } // коэффициент для предэкзаменационной консультации
        public virtual float RatingFactor { get; set; }
        public virtual float CountingFactor { get; set; }
        public virtual IList<StudyPlanItem> StudyPlanItems { get; set; }
        public virtual IList<LoadAtom> LoadAtoms { get; set; }

        public virtual void AddAtom(LoadAtom atom)
        {
            atom.Allocation = this;
            LoadAtoms.Add(atom);
        }

        public virtual void AddStudyPlanItem(StudyPlanItem SPItem)
        {
            SPItem.Allocations.Add(this);
            StudyPlanItems.Add(SPItem);
        }
    }
}